﻿'***********************************************************************
' Assembly         : SOFA.Caching
' Copyright        : (c) Jebarson. All rights reserved.
' Website			: http://www.jebarson.info
'***********************************************************************

Namespace Caching
    ''' <summary>
    ''' Interface for cache storage.
    ''' </summary>
    ''' <typeparam name="T"></typeparam>
    Public Interface ICacheStorage(Of T As ICacheStorageConfig)
        Inherits IDisposable
        ''' <summary>
        ''' Adds the storage item.	
        ''' </summary>
        ''' <param name="item">The item.</param>
        Sub AddStorageItem(ByVal item As Object)

        ''' <summary>
        ''' Gets the storage item.	
        ''' </summary>
        ''' <param name="name">The item name.</param>
        ''' <returns>The storage item.</returns>
        Function GetStorageItem(ByVal name As String) As Object

        ''' <summary>
        ''' Gets the name.	
        ''' </summary>
        ''' <param name="item">The storage item.</param>
        ''' <returns>The storage name.</returns>
        Function GetName(ByVal item As Object) As String
    End Interface
End Namespace